﻿using System;
using System.Diagnostics.Contracts;
using Adalbertus.BudgetPlanner.Domain;
using Adalbertus.BudgetPlanner.Services.CodeContracts;

namespace Adalbertus.BudgetPlanner.Services
{
    [ContractClass(typeof(IIncomeServiceContract))]
    public interface IIncomeService : IBaseService<Income>
    {
        Income Create(string name);
        IncomeEntry CreateEntry(Income income, decimal value, DateTime date);

        void RemoveEntry(IncomeEntry entry);
    }
}
